<?php


namespace app\job;

use app\common\model\Table;
use app\home\service\CardSettlementService;
use think\facade\Log;
use think\queue\Job;

/**
 * 开牌之后 主动设定结束
 * Class UserSettleTaskJob
 * @package app\job
 */
class TableEndTaskJob
{
    public function fire(Job $job, $data = null)
    {
        $info = $data;
        #逻辑执行
       if (empty($data)){
           return;
       }

        $res = Table::where('id', $data['table_id'])
            ->update([
                'status' => 1,
                'run_status' => 2,
                'update_time' => time(),
            ]);

        if ($res){
            $job->delete();
            return;
        }
        #逻辑执行结束
        if ($job->attempts() > 3) {
            Log::info('主动关闭台桌信号失败:'.json_encode($info));
            $job->delete();
            return;
            //通过这个方法可以检查这个任务已经重试了几次了
        }
        //如果任务执行成功后 记得删除任务，不然这个任务会重复执行，直到达到最大重试次数后失败后，执行failed方法
        // 也可以重新发布这个任务
        //$job->release(0); //$delay为延迟时间
    }
}